AWS Elastic Disaster Recovery(DRS) でレプリケーションが停止した際に通知する方法
困っていること
AWS Elastic Disaster Recovery(DRS) でエージェントからのレプリケーションが予期せず停止してしまった際に通知する仕組みを実装したいです。実現方法はありますか。
どう対応すればいいの?
EventBridge を利用することでレプリケーション停止時に通知することが可能です。
なお、EventBridge はレプリケーション先のリージョンにて構成する必要があるのでご注意ください。
やってみた
実際にマネジメントコンソールから EventBridge ルールを作成していきます。
イベントパスには「default」、ルールタイプは「イベントパターンを持つルール」を指定します。
「イベントパターンを構築」の画面では、それぞれ以下を指定します。
-
イベントソース
- AWS イベントまたは EventBridge パートナーイベント
-
イベントパターンの設定
- イベントソース:AWS のサービス
- AWS のサービス:Elastic Disaster Recovery Service
- イベントタイプ:DRS Source Server Data Replication Stalled Change
ターゲットには通知先の SNS トピックを指定します。
以上で EventBridge ルールの作成は完了です。
意図的にレプリケーションを停止させ、通知が飛ぶかテストしてみたいと思います。
エージェントをインストールしたソースサーバに接続し、DRS のエージェントサービスを手動で停止します。
レプリケーションが停止し、コンソール上でのデータレプリケーションのステータスが「停滞」になっています。
EventBridge が動作し、ターゲットとして指定した SNS トピックに通知が飛んでいることが確認できました。
まとめ
適切な監視を行わず、レプリケーションの予期せぬ停止に気づかないままでいた場合、実際に DR の実行が必要になった場合に、フェイルオーバー用のインスタンスを正常に起動できない可能性があります。
EventBridge を利用することで簡単に監視通知が実現できますので、DRS の利用を検討している場合は、合わせての設定をお勧めいたします。